body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.ie7 img{-ms-interpolation-mode:bicubic}.ie8 img{width:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!important}
#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
table.sortable thead th{background-image:url(../../assets/tablesorter/images/default.svg);background-repeat:no-repeat;background-position:center right}table.sortable thead th.tablesorter-headerDesc{background-image:url(../../assets/tablesorter/images/asc.svg)}table.sortable thead th.tablesorter-headerAsc{background-image:url(../../assets/tablesorter/images/desc.svg)}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
@charset "UTF-8";
.contao-cookiebar {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 9999;
  font-size: 0;
  letter-spacing: 0;
  text-align: center;
  padding: 15px;
  max-height: 100vh;
  box-sizing: border-box;
  pointer-events: none;
  overflow: hidden; }
  .contao-cookiebar * {
    box-sizing: border-box; }
  .contao-cookiebar:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .contao-cookiebar .cc-inner {
    display: inline-block;
    overflow-y: auto;
    max-height: 100%;
    max-width: 100%;
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
    font-size: 1rem;
    text-align: left; }
  .contao-cookiebar.cc-top .cc-inner {
    vertical-align: top; }
  .contao-cookiebar.cc-top.cc-active .cc-inner {
    animation: cookiebar-top-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-top.cc-saved .cc-inner {
    animation: cookiebar-top-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-bottom .cc-inner {
    vertical-align: bottom; }
  .contao-cookiebar.cc-bottom.cc-active .cc-inner {
    animation: cookiebar-bottom-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-bottom.cc-saved .cc-inner {
    animation: cookiebar-bottom-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-middle .cc-inner {
    vertical-align: middle; }
  .contao-cookiebar.cc-middle.cc-active .cc-inner {
    animation: cookiebar-middle-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-middle.cc-saved .cc-inner {
    animation: cookiebar-middle-out 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-left {
    text-align: left; }
  .contao-cookiebar.cc-right {
    text-align: right; }
  .contao-cookiebar .cc-head h1:first-child, .contao-cookiebar .cc-head h2:first-child, .contao-cookiebar .cc-head h3:first-child, .contao-cookiebar .cc-head h4:first-child, .contao-cookiebar .cc-head h5:first-child, .contao-cookiebar .cc-head h6:first-child {
    margin-top: 0; }
  .contao-cookiebar .cc-head p {
    margin-bottom: 15px; }
  .contao-cookiebar .cc-btn {
    display: inline-block;
    cursor: pointer;
    width: 100%;
    padding: 8px 14px;
    margin-bottom: 8px;
    font-size: 15px;
    outline: 0 none;
    border: 1px solid #cfcfcf;
    border-radius: 4px;
    color: #444;
    background: #f5f5f5; }
    .contao-cookiebar .cc-btn:hover {
      background: #ececec; }
    .contao-cookiebar .cc-btn:last-child {
      margin-bottom: 0; }
  .contao-cookiebar .grayscale .cc-btn {
    background: #f1efef; }
    .contao-cookiebar .grayscale .cc-btn:hover {
      background: #ececec; }
    .contao-cookiebar .grayscale .cc-btn.success {
      background: #fbfbfb; }
      .contao-cookiebar .grayscale .cc-btn.success:hover {
        background: #f7f7f7; }
  .contao-cookiebar .highlight .cc-btn.success {
    background: #4e9e3e;
    border-color: #3e7830;
    color: #fff; }
    .contao-cookiebar .highlight .cc-btn.success:hover {
      background: #4c933f; }
  .contao-cookiebar label {
    position: relative;
    display: block;
    padding: 8px 13px 8px 0;
    line-height: 1.2rem; }
    .contao-cookiebar label.group {
      font-weight: 600; }
  .contao-cookiebar input {
    position: absolute;
    width: 1px;
    height: 1px;
    outline: 0 none;
    opacity: 0; }
    .contao-cookiebar input + label {
      padding: 8px 13px 8px 50px;
      cursor: pointer; }
      .contao-cookiebar input + label:before {
        content: '';
        position: absolute;
        top: 6px;
        left: 0;
        width: 35px;
        height: 18px;
        margin: 0;
        box-sizing: content-box;
        border-radius: 10px;
        background: #fff;
        border: 2px solid #9c9b99;
        transition: border-color .2s; }
      .contao-cookiebar input + label:after {
        display: block;
        content: '';
        position: absolute;
        top: 10px;
        left: 4px;
        width: 14px;
        height: 14px;
        border-radius: 10px;
        background: #9c9b99;
        transition: background .2s, margin-left .2s, padding .2s; }
      .contao-cookiebar input + label:active:after {
        padding-left: 5px; }
    .contao-cookiebar input.cc-group-half + label:after {
      background: linear-gradient(to right, #9c9b99 0%, #9c9b99 50%, #399d32 50%, #399d32 100%); }
    .contao-cookiebar input:checked + label:after {
      background: #399d32;
      margin-left: 17px; }
    .contao-cookiebar input:checked + label:active:after {
      margin-left: 12px; }
    .contao-cookiebar input:checked + label:before {
      background: #dcf3db;
      border-color: #399d32; }
    .contao-cookiebar input:disabled + label {
      pointer-events: none; }
      .contao-cookiebar input:disabled + label:after {
        background: #c8c7c5; }
      .contao-cookiebar input:disabled + label:before {
        background: #f4f4f4;
        border-color: #c8c7c5; }
  .contao-cookiebar.cc-active .cc-inner {
    opacity: 1;
    pointer-events: auto;
    visibility: visible; }
  .contao-cookiebar.cc-active.cc-blocked {
    pointer-events: auto;
    animation: cookiebar-overlay-in 0.5s ease-in-out forwards; }
  .contao-cookiebar.cc-saved.cc-inner {
    opacity: 0;
    pointer-events: none;
    visibility: hidden; }
  .contao-cookiebar.cc-saved.cc-blocked {
    pointer-events: none;
    animation: cookiebar-overlay-out 0.5s ease-in-out forwards; }

@media (min-width: 768px) {
  .contao-cookiebar .cc-btn {
    width: auto;
    margin-bottom: 0; }
  .contao-cookiebar .cc-inner {
    max-width: 750px; } }

@keyframes cookiebar-overlay-in {
  0% {
    background: rgba(0, 0, 0, 0); }
  100% {
    background: rgba(0, 0, 0, 0.75); } }

@keyframes cookiebar-overlay-out {
  0% {
    background: rgba(0, 0, 0, 0.75); }
  100% {
    background: rgba(0, 0, 0, 0);
    visibility: hidden; } }

@keyframes cookiebar-top-in {
  0% {
    opacity: 0;
    transform: translateY(-100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes cookiebar-top-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-100%); } }

@keyframes cookiebar-middle-in {
  0% {
    opacity: 0;
    transform: scale(0); }
  100% {
    opacity: 1;
    transform: scale(1); } }

@keyframes cookiebar-middle-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: scale(1); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: scale(0); } }

@keyframes cookiebar-bottom-in {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

@keyframes cookiebar-bottom-out {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateY(0); }
  100% {
    opacity: 0;
    visibility: hidden;
    transform: translateY(100%); } }

.contao-cookiebar {
  color: #444444; }
  .contao-cookiebar p {
    color: #868686;
    line-height: 1.4; }
  .contao-cookiebar .cc-inner {
    padding: 25px;
    border-radius: 5px;
    -webkit-box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.25);
    background: #fff; }
  .contao-cookiebar .cc-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: center;
    position: relative;
    border: 1px solid #d0d0d0;
    border-radius: 5px;
    margin-bottom: 10px; }
    .contao-cookiebar .cc-group > label {
      flex-grow: 1;
      margin: 5px 0 5px 10px; }
    .contao-cookiebar .cc-group .cc-detail-btn {
      border: 0 none;
      outline: 0 none;
      background: transparent;
      font-size: 13px;
      letter-spacing: 0;
      text-transform: initial;
      cursor: pointer;
      color: #a2a2a2;
      padding: 8px 10px;
      line-height: 1.2rem; }
      .contao-cookiebar .cc-group .cc-detail-btn span:nth-child(2) {
        display: none; }
      .contao-cookiebar .cc-group .cc-detail-btn.cc-active span:nth-child(1) {
        display: none; }
      .contao-cookiebar .cc-group .cc-detail-btn.cc-active span:nth-child(2) {
        display: inline; }
      .contao-cookiebar .cc-group .cc-detail-btn:hover {
        color: #717171; }
    .contao-cookiebar .cc-group .cc-detail-btn-details {
      display: inline-block;
      border: 0 none;
      outline: 0 none;
      background: transparent;
      font-size: 13px;
      letter-spacing: 0;
      text-transform: initial;
      cursor: pointer;
      color: #a2a2a2;
      text-decoration: underline;
      padding: 0;
      margin: 0 0 10px; }
      .contao-cookiebar .cc-group .cc-detail-btn-details span:nth-child(2) {
        display: none; }
      .contao-cookiebar .cc-group .cc-detail-btn-details.cc-active span:nth-child(1) {
        display: none; }
      .contao-cookiebar .cc-group .cc-detail-btn-details.cc-active span:nth-child(2) {
        display: inline; }
      .contao-cookiebar .cc-group .cc-detail-btn-details:hover {
        color: #717171; }
  .contao-cookiebar .cc-cookies {
    display: none;
    width: 100%;
    background: #fbfbfb;
    border-radius: 0 0 5px 5px; }
    .contao-cookiebar .cc-cookies > p {
      font-size: 0.875rem; }
    .contao-cookiebar .cc-cookies > p, .contao-cookiebar .cc-cookies > .cc-cookie {
      margin: 0;
      padding: 15px;
      border-top: 1px solid #e6e6e6; }
    .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info {
      font-size: 0.875rem;
      background: #fff;
      padding: 10px;
      border-radius: 5px;
      border: 1px solid #efefef; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info > div > span {
        font-weight: 600; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info > div + div {
        margin-top: 5px; }
      .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-info + button.cc-detail-btn-details {
        margin-top: 15px; }
    .contao-cookiebar .cc-cookies .cc-cookie .cc-cookie-desc > p {
      margin-bottom: 0; }
    .contao-cookiebar .cc-cookies .cc-cookie label.cookie + p, .contao-cookiebar .cc-cookies .cc-cookie label.cookie + .cc-cookie-info, .contao-cookiebar .cc-cookies .cc-cookie label.cookie + button.cc-detail-btn-details {
      margin-top: 10px; }
    .contao-cookiebar .cc-cookies .cc-cookie p {
      margin: 0 0 15px;
      font-size: 0.875rem; }
  .contao-cookiebar .cc-footer, .contao-cookiebar .cc-info {
    text-align: center; }
  .contao-cookiebar .cc-info {
    margin-top: 15px; }
    .contao-cookiebar .cc-info > p {
      font-size: 0.875rem; }
    .contao-cookiebar .cc-info > a {
      display: inline-block;
      font-size: 0.813rem;
      color: #a2a2a2;
      text-decoration: none; }
      .contao-cookiebar .cc-info > a:hover {
        color: #717171; }
      .contao-cookiebar .cc-info > a + a:before {
        display: inline-block;
        content: '·';
        margin-right: 5px; }

/* open-sans-300 - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 300;
  src: url("/webfonts/open-sans-v17-latin-300.eot"); /* IE9 Compat Modes */
  src: local("Open Sans Light"), local("OpenSans-Light"),
       url("/webfonts/open-sans-v17-latin-300.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
       url("/webfonts/open-sans-v17-latin-300.woff2") format("woff2"), /* Super Modern Browsers */
       url("/webfonts/open-sans-v17-latin-300.woff") format("woff"), /* Modern Browsers */
       url("/webfonts/open-sans-v17-latin-300.ttf") format("truetype"), /* Safari, Android, iOS */
       url("/webfonts/open-sans-v17-latin-300.svg#OpenSans") format("svg"); /* Legacy iOS */
}

/* open-sans-regular - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  src: url("/webfonts/open-sans-v17-latin-regular.eot"); /* IE9 Compat Modes */
  src: local("Open Sans Regular"), local("OpenSans-Regular"),
       url("/webfonts/open-sans-v17-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
       url("/webfonts/open-sans-v17-latin-regular.woff2") format("woff2"), /* Super Modern Browsers */
       url("/webfonts/open-sans-v17-latin-regular.woff") format("woff"), /* Modern Browsers */
       url("/webfonts/open-sans-v17-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS */
       url("/webfonts/open-sans-v17-latin-regular.svg#OpenSans") format("svg"); /* Legacy iOS */
}

/* open-sans-600 - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 600;
  src: url("/webfonts/open-sans-v17-latin-600.eot"); /* IE9 Compat Modes */
  src: local("Open Sans SemiBold"), local("OpenSans-SemiBold"),
       url("/webfonts/open-sans-v17-latin-600.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
       url("/webfonts/open-sans-v17-latin-600.woff2") format("woff2"), /* Super Modern Browsers */
       url("/webfonts/open-sans-v17-latin-600.woff") format("woff"), /* Modern Browsers */
       url("/webfonts/open-sans-v17-latin-600.ttf") format("truetype"), /* Safari, Android, iOS */
       url("/webfonts/open-sans-v17-latin-600.svg#OpenSans") format("svg"); /* Legacy iOS */
}

/* open-sans-700 - latin */
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 700;
  src: url("/webfonts/open-sans-v17-latin-700.eot"); /* IE9 Compat Modes */
  src: local("Open Sans Bold"), local("OpenSans-Bold"),
       url("/webfonts/open-sans-v17-latin-700.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
       url("/webfonts/open-sans-v17-latin-700.woff2") format("woff2"), /* Super Modern Browsers */
       url("/webfonts/open-sans-v17-latin-700.woff") format("woff"), /* Modern Browsers */
       url("/webfonts/open-sans-v17-latin-700.ttf") format("truetype"), /* Safari, Android, iOS */
       url("/webfonts/open-sans-v17-latin-700.svg#OpenSans") format("svg"); /* Legacy iOS */
}

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
    --ka-bk-color:#fdf8f2;

    --ka-font-color:#000000;
    --ka-font-size:16px;

    --ka-desktopwidth:1200px;
}


/* ****************************************************************************************************************** */
/* --- Basics ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

body {
    background-color:#ffffff;
    font-family:Open Sans,Arial;
    font-weight: 400;
    color:#000000;
    font-size:1em;
    line-height:1em;
    margin: 0;
    padding: 0;
}

#wrapper {
    width:100%;
    min-height:200px;
    margin: 0;
    padding: 0;
}

#container {
    width:100%;
    margin: 0;
    padding: 0;
}

#main {
    min-height: 200px;
    margin-bottom: 0;
}

#main {
    /*text-align: center;*/
}

a,
body,
fieldset,
form,
input,
label,
li,
ol,
optgroup,
p,
select,
td,
th,
textarea,
ul {
    font-size:16px;
    line-height:22px;
    letter-spacing:.02em;
}

fieldset,
form,
input,
optgroup,
select,
textarea {

}

ul {
    padding-top:4px;
    padding-left:17px;
}
li {
    margin-bottom:4px;
    padding-left:2px;
    list-style-type:none;
}

#main ce_text li {
    list-style-type:disc;
}

/*
#main li::before {
    content: "•"; color: #b2c900;
    display: inline-block; width: 1em;
    margin-left: -1em;
}
*/
pre,
form {
    margin:0;
    padding:0;
}
p {
    margin-top:0px;
    margin-bottom:0px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family:Open Sans,Arial;
    white-space: 300;
}
h1 {
    margin-top:10px;
    margin-bottom:5px;
    white-space:nowrap;
    font-size:60px;
    line-height:60px;
    font-weight:300;
    color:#000000;
    letter-spacing: 0em;
}
h2 {
    margin-top:15px;
    font-size:50px;
    line-height:58px;
    color:#000000;
    font-weight:300;
    letter-spacing: 0em;
}
h3 {
    margin-top:15px;
    font-size:36px;
    line-height:40px;
    font-weight:400;
    color:#000000;
    letter-spacing: 0em;
}
h4 {
    margin-top:35px;
    font-size:30px;
    line-height:34px;
    font-weight:normal;
    color:#000000;
    text-transform:uppercase;
    letter-spacing:0.15em;
}
h5 {
    margin-top:35px;
    font-size:18px;
    line-height:22px;
    font-weight:normal;
    color:#23bfe4;
    text-transform:uppercase;
    letter-spacing:0.15em;
}
h6 {
    margin-top:35px;
    font-size:14px;
    line-height:34px;
    font-weight:normal;
    color:#131820;
    text-transform:uppercase;
    letter-spacing:0.15em;
}
/*
body.home h1 {
    margin-bottom:15px;
    font-size:45px;
    line-height:52px;
    font-weight:bold;
    color:#b3b3b3;
    text-transform:uppercase;
    letter-spacing:3px;
    word-spacing:5px;
}
body.home h2 {
    display:block;
    margin-bottom:10px;
    font-size:30px;
    line-height:36px;
    font-weight:bold;
    color:#b3b3b3;
}
body.home h3 {
    display:block;
    margin-bottom:10px;
    font-size:30px;
    line-height:36px;
    color:#0075bf;
}
*/
optgroup {
    padding-top:3px;
    padding-bottom:3px;
}
a {
    text-decoration:none;
    color:#000000;
    transition: all .5s ease-in-out;
}
a:hover {
    color:#23bfe4;
}

table {
    margin-top:10px;
}
table thead {
    border-bottom:1px solid #9e9e9e;
}
td {
    padding:3px;
}
.ce_gallery > ul li.col_first {
    clear:none;
}
.ce_gallery .flex-images a {
    float:left;
    margin-right:0px;
    margin-bottom:20px;
    width:calc(33% - 10px);
}

.ce_gallery ul {
    list-style-type: none;
}

.ce_gallery ul li {
    padding: 0;
}

.ce_gallery ul li .image_container {
    overflow: hidden;
    line-height: 1px;
}
.ce_gallery ul li .image_container a {
    line-height: 1px;
}

.ce_gallery ul li .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;
}

.ce_gallery ul li .image_container img:hover {
    transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
}

.ce_gallery ul.cols_2 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(50% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_3 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(33.3% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_4 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(25% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_5 li {
    padding-left: 7px;
    padding-right: 7px;
    margin-bottom: 14px;
    width: calc(20% - 14px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_6 li {
    padding-left: 2px;
    padding-right: 2px;
    margin-bottom: 14px;
    width: calc(16.6% - 4px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery ul.cols_7 li {
    padding-left: 25px;
    padding-right: 25px;
    margin-bottom: 14px;
    width: calc(14% - 50px);
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}


.ce_gallery.margin0 ul.cols_2 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 50%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_3 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 33.3%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_4 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 25%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_5 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 20%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_6 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 16.6%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}
.ce_gallery.margin0 ul.cols_7 li {
    padding-left: 0px;
    padding-right: 0px;
    margin-bottom: 0px;
    width: 14%;
    list-style-type: none;
    list-style-image: none;
    list-style: none;
}

.ce_gallery .flex-images {
    display: flex;
    justify-content: space-between;
}

.ce_gallery .flex-images .item img {
    align-self: center;
    height: auto;
}

figure.image_container.kimg.float_left {
    margin-right:20px;
    margin-bottom:20px;
}

.ce_gallery.masonry ul { /* Masonry container */
    column-count: 4;
    column-gap: 0.5em;
}
.ce_gallery.masonry > ul li.col_first {
    clear: left;
}
.ce_gallery.masonry li { /* Masonry bricks or child elements */
    background-color: #eee;
    display: inline-block;
    margin: 0 0 0.5em;
    padding: 0;
    width: 100%;
    float: none;
    /*width: 25% !important;*/
}

.clear,
#clear {
    float:none;
    clear:both;
    height:auto;
}
.center {
    width:100%;
    text-align:center;
}

.floatleft {
    float: left;
}

.col20 {
    width:20%;
}
.col25 {
    width:25%;
}
.col33 {
    width:33.3%;
}
.col50 {
    width:50%;
}
.col66 {
    width:66.6%;
}
.col66 {
    width:80;
}
.col33m {
    float:left;
    margin-left:25px;
    width:calc(33.3% - 25px);
}
.col33line {
    float:left;
    width:calc(33.3% - 30px);
}

.col50m {
    float:left;
    margin-right:20px;
    width:calc(50% - 20px);
}
.col50mr {
    float:left;
    margin-right:0;
    margin-left:20px;
    width:calc(50% - 20px);
}
.col50line {
    float:left;
    width:calc(50% - 31px);
}
.col66m {
    float:left;
    margin-right:25px;
    margin-left:0;
    width:calc(66.6% - 25px);
}
.col66line {
    float:left;
    width:calc(66.6% - 32px);
}
.colline {
    width:2px;
    float:left;
    display:inline-block;
    margin-right:29px;
    margin-left:29px;
    padding-right:0;
    padding-left:0;
    border-right:2px solid #b3b3b3;
}
.dist20 {
    height:20px;
    display:block;
}
.dist25 {
    height:25px;
    display:block;
}
.dist30 {
    height:30px;
    display:block;
}
.dist50 {
    height:50px;
    display:block;
}
.dist100 {
    height:100px;
    display:block;
}

.distleft0 {
    position: absolute;
    left: 0;
}
.distleft10 {
    position: absolute;
    left: 10%;
}
.distleft20 {
    position: absolute;
    left: 20%;
}
.distleft25 {
    position: absolute;
    left: 25%;
}
.distleft33 {
    position: absolute;
    left: 33.3%;
}
.distleft40 {
    position: absolute;
    left: 40%;
}
.distright0 {
    position: absolute;
    right: 0;
}
.distright10 {
    position: absolute;
    right: 10%;
}
.distright20 {
    position: absolute;
    right: 20%;
}
.distright25 {
    position: absolute;
    right: 25%;
}
.distright33 {
    position: absolute;
    right: 33.3%;
}
.distright40 {
    position: absolute;
    right: 40%;
}

.limit2000 {
    max-width:2000px;
    margin-right:auto;
    margin-left:auto;
}

.limit1600 {
    max-width:1600px;
    margin-right:auto;
    margin-left:auto;
}
.limit1400 {
    max-width:1400px;
    margin-right:auto;
    margin-left:auto;
}
.limit1200 {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
.limit1000 {
    max-width:1000px;
    margin-right:auto;
    margin-left:auto;
}
.limit800 {
    max-width:800px;
    margin-right:auto;
    margin-left:auto;
}

.boxgrey {
    width:100%;
    display:inline-block;
    padding-top:20px;
    padding-bottom:30px;
    background-color:#e5e5e5;
}
.boxgrey.center {
    display: flex;
    justify-content: center;
    flex-direction:row;
}
.boxgrey.column {
    flex-direction:column;
}

.boxwhite {
    width:100%;
    display:inline-block;
    padding-top:20px;
    padding-bottom:30px;
    background-color:#ffffff;
}

.boxwhite.center {
    display: flex;
    justify-content: center;
}

.boxwhite.column {
    flex-direction:column;
}

.boxdarkblue {
    width:100%;
    display: flex;
    padding-top:20px;
    padding-bottom:100px;
    background-color:#131820;
    flex-direction:column;
    justify-content: center;
}

.boxdarkblue.center {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.boxdarkblue .projects {
    display: flex;
    flex-direction:row;
    justify-content: space-between;
    text-align: left;
    color: #ffffff;
}

.boxdarkblue .projects .projectlink,
.boxdarkblue .projects .ce_text {
    width: calc(50% - 10px);
}

.boxdarkblue .projects .projectlink .text,
.boxdarkblue .projects .ce_text .ktext {
    width: 66%;
}

.boxdarkblue .projects h2,
.boxdarkblue .projects div,
.boxdarkblue .projects .button a,
.boxdarkblue .ktext h2,
.boxdarkblue .ktext p {
    color: #ffffff;
    text-transform:normal;

}

.boxdarkblue .projects div.headline {
    font-size: 36px;
    line-height: 40px;
    font-weight: 300;
    margin-bottom: 20px;
    margin-left: 0px;
}

.boxdarkblue .projects p {
    color: #999999;
}

.boxdarkblue .projects .button a {
    display: block;
    font-weight: 500;
    margin-top: 20px;
}

.boxdarkblue .headlinecolor {
    text-transform:uppercase;
    width: auto;
    min-width: 0;
    display:table;
    padding: 0;
    margin-top: 30px;
    margin-left: 0px;
    font-size: 16px;
    line-height:18px;
    font-weight: 600;
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.boxmiddleblue {
    width:100%;
    display:inline-block;
    padding-top:20px;
    padding-bottom:30px;
    background-color:#131820;
}

.boxmiddleblue.center {
    display: flex;
    flex-direction:column;
    justify-content: center;
}

.boxmiddleblue.center h2,
.boxmiddleblue.center div {
    color:#ffffff;
}

.boxww {
    width:100%;
    display: flex;
    padding-top:100px;
    padding-bottom:100px;
    background-color:#131820;
    flex-direction:column;
    justify-content: center;
}



/* 7ec708 */
.boxgreen {
    width:100%;
    display:inline-block;
    padding-top:10px;
    padding-bottom:15px;
    background-color:#92ad9f;
}
.boxgreen h1,
body.home .boxgreen h1 {
    max-width:100%;
    margin-top:15px;
    padding-top:0;
    font-size:44px;
    color:#FFF;
}
.boxgreen h2,
body.home .boxgreen h2 {
    max-width:100%;
    margin-top:20px;
    padding-top:0;
    font-size:30px;
    color:#23a7c4;
}
.flexcontainer {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    flex-direction: row;
}
.flexcontainer.space-between {
    margin-top: 50px;
    margin-bottom: 50px;
    justify-content: space-between;
}
.flexcontainer.space-between .ce_hyperlink {
    position: relative;
    align-items: center;
    margin-right:0px;
    margin-bottom:20px;
    width:calc(33% - 10px);
    overflow: hidden;
}
.flexcontainer.column {
    flex-direction: column;
}

.flexcontainer.space-between .ce_hyperlink * {
    overflow: hidden;
    line-height: 1px;
}

.flexcontainer.space-between .ce_hyperlink .linktitle {
    position: absolute;
    width: 100%;
    top: calc(50% - 15px);
    color: #ffffff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform:uppercase;
    pointer-events: none;
    text-align: center;
}

.flexcontainer.space-between .ce_hyperlink .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .5s ease-in-out;
}

.flexcontainer.space-between .ce_hyperlink:hover .image_container img {
    transform: scale(1.1, 1.1);
    -ms-transform: scale(1.1, 1.1);
    -webkit-transform: scale(1.1, 1.1);
}

.flexbox {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
.ce_dma,
.ce_ce_dma {
    width:100%;
}
.dlh_googlemap {
    margin-top:20px;
    width: 100% !important;
    height: 350px !important;
    padding-bottom: 0% !important;
}
.dlh_googlemap input {
    margin-right:5px;
    margin-left:0;
    padding-top:3px;
    padding-bottom:3px;
}
.dlh_googlemap .submit {
    width:40px;
    margin-right:0;
    margin-left:5px;
}
div.ce_toplink {text-align: center;
    bottom:10px;
    right:10px;
    position:fixed;
    z-index:991;
}
div.ce_toplink a {
    margin:0;
    padding:0;
}
.ce_code {
    margin-top:10px;
    margin-bottom:10px;
    padding:5px 20px;
    background: linear-gradient(#ddd .0625em, #f6f7f7 .0625em) 0 -.0625em repeat;
    1background-size: 100% 1.5em;
    1overflow: auto;
    border: 1px solid #c9c9c9;
    border-radius: 3px;
    box-shadow: 0 1px 5px rgba(0,0,0,0.2);
    1white-space: pre;
    word-wrap: normal;
}
code {
    width:100%;
    display:inline-block;
}
body .msry_theme_standard .masonry_gallery {
    margin:10px;
    padding:0;
    width:calc(20% - 20px);
}
#main img {
    max-width:100%;
}

#main .ce_player .video_container {
    max-width: 1600px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}
#main .ce_vimeo {
    position: relative;
    width: 100%;
    height: auto;
    min-height: 790px;
    margin-left: auto;
    margin-right: auto;
}
#main .limit1400 .ce_youtube {
    position: relative;
    width: 100%;
    max-width: 1600px;
    /*padding-bottom: 56.25%;*/
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

#main .ce_youtube.col50,
#main .ce_youtube.col50m {
    float:left;
    width: 50%;
    padding-bottom: 0%;
}

#main .limit1400 .ce_youtube iframe,
#main .limit1400 .ce_vimeo iframe {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100% !important;
    height: 100% !important;
}


#cboxContent {
    margin: 59px 30px 0 30px;
    background-color: rgba(0,0,0,0.1);
}
#cboxLoadedContent {
    border: 0;
    background-color: rgba(0,0,0,0.1);
}
#cboxCurrent {
    display: none !important;
}
#cboxPrevious {
    left:-29px;
    width: 25px;
    height: 47px;
    background-image: url("/files/intern/common/fmd-pfeile-galerie-links.png");
}
#cboxNext {
    right:-29px;
    width: 25px;
    height: 45px;
    background-image: url("/files/intern/common/fmd-pfeile-galerie-rechts.png");
}
#cboxPrevious:hover {
    /*background-position: left top;*/
    background-image: url("/files/intern/common/fmd-pfeile-galerie-links-hover.png");
}
#cboxNext:hover {
    /*background-position: right top;*/
    background-image: url("/files/intern/common/fmd-pfeile-galerie-rechts-hover.png");
}
#cboxClose {
    top: -44px;
    width: 40px;
    height: 40px;
    background-image: url("/files/intern/common/fmd-close.png");
}
#cboxClose:hover {
    background-image: url("/files/intern/common/fmd-close-hover.png");
}
#cboxTitle {
    top:-25px;
    left:50%;
    text-align: center;
}

.rsts-skin-default .rsts-prev,
.rsts-skin-default .rsts-next,
.rsts-skin-default .rsts-video-play,
.rsts-skin-default .rsts-video-stop,
.rsts-skin-default .rsts-thumbs-prev,
.rsts-skin-default .rsts-thumbs-next {
    background-position:center center;
    background-repeat:no-repeat;
    -webkit-box-shadow:0 0 0 0;
    box-shadow:0 0 0 0;
    border:0px;
    border-radius:0;
    background-clip: initial;
    background-color:transparent;
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-prev {
    position:absolute;
    width:30px;
    height:40px;
    top:calc(50% - 20px);
    left:20px;
    background-image:url("/files/intern/common/fmd-pfeil-links.png");
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-next {
    position:absolute;
    width:30px;
    height:40px;
    top:calc(50% - 20px);
    right:20px;
    background-image:url("/files/intern/common/fmd-pfeil-rechts.png");
    background-size: 30px,40px;
}

.rsts-skin-default .rsts-prev:hover,
.rsts-skin-default .rsts-next:hover,
.rsts-skin-default .rsts-video-play:hover,
.rsts-skin-default .rsts-video-stop:hover,
.rsts-skin-default .rsts-thumbs-prev:hover,
.rsts-skin-default .rsts-thumbs-next:hover {
    background-color: transparent;
}

.rsts-skin-default .rsts-nav {
    position: absolute;
    bottom: 20px;
    left:0;
    width: 100%;
    text-align: center;

}

.rsts-skin-default .rsts-nav-bullets a {
    background-color: #e5e5e5;
    box-shadow: 0 0 0px #777;
}
.rsts-skin-default .rsts-nav-bullets a.active {
    background-color: #23bfe4;
}
.rsts-skin-default .rsts-nav-bullets a:hover {
    background-color: #23bfe4;
}

.fla  {
    width: 25%;
}
.fla .mod_rocksolid_slider {
    width: 100%;
}
.fla .mod_rocksolid_slider .rsts-caption {
    display: none;
}
.fla .ce_hyperlink {
    margin-top: 15px;
}
.fla .ce_hyperlink a {
    text-transform:uppercase;
}

/* ****************************************************************************************************************** */
/* --- header ---------- -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#header {
    width:100%;
    /*height:150px;*/
    height:70px;
    top:0;
    position:fixed;
    z-index:980;
    margin: 0;
    padding: 0;
}
#header .inside {
    width: 100%;
    height: 100%;
    padding:0;
    margin: 0;
    position: relative;
}

#header .background {
    width: 100%;
    height: 100%;
    display: inline-block;
    /*background: linear-gradient(to bottom, rgba(0, 0, 0, 1), rgba(0, 0, 0, 0));*/
    /*background: rgba(19, 24, 32, 0.7);*/
    background: rgba(0, 0, 0, 0.7);
}

#header.small {
    height:70px;
    -moz-transition: height 1s ease-in-out;
    -webkit-transition: height 1s ease-in-out;
    -o-transition: height 1s ease-in-out;
    transition: height 1s ease-in-out;
}

#header #HeaderLogo {
    position: absolute;
    left:40px;
    /*top:40px;*/
    top:80px;
    width:120px;
    -webkit-transition: width 1s ease-in-out, top 1s ease-in-out;
    transition: width 1s ease-in-out, top 1s ease-in-out;
    z-index:990;
}

#header.small #HeaderLogo {
    top:5px;
    width: 60px;
}

/*
#header .image_container {
    position: absolute;
    top: 0;
    z-index:980;
}

#header.small #HeaderLogo {
    width:160px;
    left:0;
    top:3px;
    position:absolute;0
    overflow:hidden;
    transition: all 1s ease;
}
*/

#header .mod_changelanguage {
    position: absolute;
    top: 33px;
    right: 120px;
}
.mod_changelanguage * {
    color: #ffffff;
    font-size: 15px;
    font-weight: 400;
    line-height: 14px;
}
#header .mod_changelanguage ul {
    margin: 0;
    padding: 0;
}
.mod_changelanguage li {
    float: left;
    margin: 0;
    padding: 0 4px;
}
.mod_changelanguage li.first {
    border-right: 1px solid #dddddd;
}
.mod_changelanguage li.active strong {
    color: #23bfe4;
}

#header .socials {
    position: absolute;
    right: 10px;
    top:30px;
    -webkit-transition: width 1s ease-in-out, top 1s ease-in-out;
    transition: width 1s ease-in-out, top 1s ease-in-out;
}

#header.small .socials {
    /*top:14px;*/
}

#header .socials a {
    margin-right:  10px;
}

#header .socials img {
    width: 15px;
}

#banner {
    top:0;
    position:relative;
    margin-top:0px;
    z-index:950;
}
#banner,
#banner .bannerinside,
#bannerimage {
    line-height: 1px;
}

#banner .bannerinside {
    min-height:0px;
    overflow:hidden;
    max-height:calc(100vh - 20px) !important;
}

#bannerimage {
    width:100%;
    position:relative;
    max-height:calc(100vh - 20px) !important;
}

#bannerimage #bannersmall,
#bannerimage #bannersmall img.image {
    width:100%;
    font-size:2px;
    line-height:2px;
    z-index:950;
}

#bannerimage .mod_article {
    /*text-align: center;*/
}

#bannerimage .downbutton {
    position:absolute;
    left:calc(50% - 25px);
    width:auto;
    bottom:30px;
    position:absolute;
    overflow:hidden;
    display:block;
    text-align:center;
    font-size:2px;
    padding:10px;
    line-height:2px;
    z-index:952;
}

#bannerimage .downbutton a {
    overflow:hidden;
    display:block;
    font-size:17px;
    line-height:2px;
}
#bannerimage .image_container img,
#bannerimage .video_container video {
    width: 100%;
}
#bannerimage .video_container video {
    z-index:950;
}


div#anker {
    line-height: 1px;
}
div#anker::before {
    content: '';
    display: block;
    height:      50px;
    margin-top: -50px;
    visibility: hidden;
    line-height: 1px;
}
#bannertext {
    width:100%;
    top:66%;
    position:absolute;
    display:inline-block;
    z-index:802;
}
#bannertext .textinside {
    width:80%;
    max-width:1600px;
    margin-right:auto;
    margin-left:auto;
}
#bannertext h1 {
    font-size:80px;
    line-height:85px;
    font-weight:bold;
    color:#FFF;
    text-transform:none;
}
#bannertext p {
    font:36px/40px Caveat;
    color:#FFF;
}
.rsts-skin-default .rsts-nav {
    bottom:5px;
    right:20px;
    position:absolute;
}


/* ****************************************************************************************************************** */
/* --- footer ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#footer {
    width: 100%;
    min-height:50px;
    top:0;
    position:relative;
    clear:both;
    display:block;
    background-color:#131820;
    margin-top:0;
    margin-bottom:0;
    padding-top:0px;
}

#footer * {
    color: #8e9096;
    font-size: 15px;
    font-weight: 400;
    line-height:18px;
    letter-spacing: 0.05em;

}

#footer .inside {
    height: 100%;
    float:none;
    clear: both;
    display:block;
    max-width: var(--ka-desktopwidth);
    margin-right:auto;
    margin-left:auto;
    padding:0 0 0 0;
}

#footer .footer-cols {
    position:relative;
    display:flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding-top: 80px;
}

#footer .footer-std {
    position:relative;
    width: 100%;
    display:inline-block;
    clear: both;
    float: none;
    max-width: var(--ka-desktopwidth);
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 50px;
}

.mod_footer_contact,
.mod_footer_studios,
.mod_footer_navi,
.mod_footer_colortext {
    margin:0;
    padding: 0;
    1border-width: 1px 1px 1px 1px;
    1border-style: solid;
    1border-color: #ff0000;
}


#footer .mod_footer_colortext {
  width: 35%;
  margin-top: 10px;
  text-transform:uppercase;
  padding: 0;
  font-size: 36px;
  font-weight: 300;
  line-height:40px;
  margin-right: 0;
  background-image:linear-gradient(to right,#b91509,#20549d,#23bfe4,#b91509,#20549d,#23bfe4,#b91509,#20549d,#23bfe4,#b91509,#20549d,#23bfe4);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;

  /*text-align: center;*/
  background-size: 500% auto;
  animation: shine 30s linear infinite;
}

@keyframes shine {
  to {
    background-position: 200% center;
  }
}


/*
#footer .mod_footer_colortext {
    width: 30%;
    margin-top: 50px;
    text-transform:uppercase;
    padding: 0;
    font-size: 38px;
    line-height:40px;
    margin-right: 0;
    background-image: url('/files/intern/common/fmd-look.png');
    background-clip: text;
    background-size: 120%;
    -webkit-text-fill-color:transparent;
    -webkit-text-stroke: 1px #FAB6D3;
    -webkit-text-stroke:0px #AB2158;
}
*/

#footer .mod_footer_contact H1,
#footer .mod_footer_studios H1,
#footer .mod_footer_navi H1 {
    text-transform:uppercase;
    font-size: 16px;
    letter-spacing: 0.05em;
    color: #ffffff;
}

.mod_footer_navi {
    padding-top: 5px;
}

.mod_footer_navi ul {
    list-style-type:none;
    1display:flex;
    justify-content: center;
    margin-left: 0;
    padding-left: 0;
}

.mod_footer_navi li {
    display: block;
    padding: 0;
    margin: 0;
}

#footer strong,
#footer div {

}

.mod_footer_navi li strong,
.mod_footer_navi a {
    padding-right:0;
    padding-left:0px;
}

#footer .socials,
.mod_footer_copyright {
    position:relative;
}

#footer .socials a {
    margin-right:  20px;
}

#footer .socials img {
    width: 15px;
}

#footer a:hover,
#footer .mod_footer_navi a:hover,
#footer .mod_footer_navi a:hover span {
    color:#23bfe4;
}

.mod_footer_copyright {
    margin-top: 60px;
}


/* ****************************************************************************************************************** */
/* --- mainmenu ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media screen and (min-width: 851px) {
    #navmobil {
        display:none;
    }

    #mainnav {
        height:30px;
        right:185px;
        top:30px;
        position:absolute;
        overflow:visible;
        margin:0;
        -moz-transition: top 1s ease-in-out;
        -webkit-transition:  top 1s ease-in-out;
        -o-transition:  top 1s ease-in-out;
        transition:  top 1s ease-in-out;HeaderS
        z-index: 999;
    }

    #header.small #mainnav {
        /*top:14px;*/
    }

    .mod_navigation a,
    .mod_navigation li.active strong {
        margin:0;
        padding:0;
        font:15px/15px Open Sans;
        font-family:Open Sans,Arial;
        font-weight:600;
        color:#ffffff;
        text-transform:uppercase;HeaderS
        letter-spacing:.1em;
    }

    .mod_navigation a:hover {
        text-decoration:none;
    }

    .mod_navigation span.active,
    .mod_navigation li.sibling,
    .mod_navigation li.trail {
        margin:0;
        padding:0;
    }

    .mod_navigation ul.level_1 span.active,
    .mod_navigation ul.level_1 li.sibling,
    .mod_navigation ul.level_1 li.trail {
        padding-bottom: 0px;
    }

    .mod_navigation li {
        position:relative;
        padding: 0;
        float:left;
        list-style-type:none;
    }
    .mod_navigation li a,
    .mod_navigation li.active strong {
        position:relative;
        float:left;
        margin:0;
        padding:2px 15px 11px 5px;
        font-weight:600;
        text-align:center;
        text-transform:uppercase;
        letter-spacing:.1em;
        list-style-type:none;
    }
    .mod_navigation li.active strong {
        color:#caefff;
    }
    .mod_navigation li a span {
        margin:0;
        padding:0;
    }
    .mod_navigation li a:hover,
    .mod_navigation li a.sfhover {
        color:#caefff;   /* Farbton für den Hovereffekt */
        -webkit-transition: color 500ms ease-in-out; /* WebKit   */
        -moz-transition: color 500ms ease-in-out;    /* Firefox  */
        -o-transition: color 500ms ease-in-out;      /* Opera    */
        transition: color 500ms ease-in-out;         /* Standard */
    }
    .mod_navigation ul {
        margin:0;
        padding:0;
        list-style-type:none;
    }
    .mod_navigation li ul {
        width:280px;
        bottom:0;
        left:0;
        right:0;
        top:27px;
        position:absolute;
        display:none;
        padding-top:1px;
        background-color:#777777;
    }
    .mod_navigation li ul li {
        display: inline-block;
        margin:0;
        padding:0;
        border-bottom:1px solid #777777;
        border-radius:0;
    }
    .mod_navigation li ul li a,
    .mod_navigation li ul li.active strong {
        width:274px;
        margin:0;
        padding:11px 0 11px 5px;
        text-align:left;
        background-color:rgba(17,17,17,.4);
        background-image:none;
        color:#b3b3b3;   /* Farbton für den Link im Normalzustand */
        -webkit-transition: color 1s ease-out; /* WebKit   */
        -moz-transition: color 1s ease-out;    /* Firefox  */
        -o-transition: color 1s ease-out;      /* Opera    */
        transition: color 1s ease-out;         /* Standard */
    }
    .mod_navigation li ul li a:hover {
        color:#ffffff;   /* Farbton für den Hovereffekt */
        -webkit-transition: color 500ms ease-in-out; /* WebKit   */
        -moz-transition: color 500ms ease-in-out;    /* Firefox  */
        -o-transition: color 500ms ease-in-out;      /* Opera    */
        transition: color 500ms ease-in-out;         /* Standard */
    }
    .mod_navigation li ul li.active strong {
        /*
        background-color:rgba(245,245,245,.85);
        */
        font-weight: 400;
        background-image:none;
        color:#caefff;
    }
    .mod_navigation li ul ul {
        left:200px;
        position:absolute;
        top:0;
        z-index: 999;
    }
    .mod_navigation li:hover ul {
        display:block;
    }
    .mod_navigation ul li:hover ul ul {
        display:none;
    }
    .mod_navigation ul ul li:hover ul {
        display:block;
    }
}

.submit {
    width:265px;
    max-width:50%;
    margin-top:40px;
    margin-left:180px;
    padding-top:8px;
    padding-bottom:6px;
    background-color:#131820;
    color: #ffffff;
    font-weight: 600;
    text-transform:uppercase;
    border:medium none;
    cursor: pointer;
}
fieldset {
    width:100%;
    display:block;
    margin:12px 0 12px 0;
    padding:0px 0 0px 0;
}

.widget-textarea label,
.widget-captcha label,
.widget-text label,
.widget-password label,
.widget-radio legend,
.select label {
    width:180px;
    float:left;
    display:block;
}
input.text,
input.password,
input.captcha {
    width:calc(100% - 360px);
    max-width:90%;
    margin:3px 0;
    padding-top:2px;
    padding-bottom:2px;
    padding-left:4px;
    background-color:#eeeeee;
    border:medium none;
}
input.captcha {
    width:75px;
    margin-right:5px;
}
textarea {
    width:1020px;
    height:200px;
    margin-top:3px;
    margin-bottom:3px;
    margin-left:0;
    padding-left:5px;
    background-color:#eeeeee;
    border:medium none;
    width:calc(100% - 360px);
}
select {
    width:204px;
    margin:1px 0;
}
div.radio_container {
    margin:5px 0 1px;
}
div.radio_container span {
    display:block;
    padding-right:6px;
}
input.radio {
    top:2px;
    position:relative;
    margin:1px 2px 0 1px;text-w
    padding:0;
}
fieldset.checkbox_container {
    width:95%;
    margin:10px 0 10px 170px;
    padding-top:0;
    padding-bottom:0;
}
fieldset.checkbox_container label {
    display:block;
    max-width:calc(100% - 200px);
}
div.checkbox_container span {
    display:block;
    padding-right:6px;
}
input.checkbox {
    float:left;
    margin:3px 7px 0 1px;
    padding:0;
}
fieldset span {
    display: table-row-group;
}
fieldset legend span {
    display: inline;
}
fieldset span label {
    float: none;
}

fieldset table td:first-child {
    margin:1px 0;
}
#col_0 {
    width:150px;
    margin-left:0;
}
.startform .widget-textarea label,
.startform .widget-captcha label,
.startform .widget-text label,
.startform .widget-password label,
.startform .select label {
    width:180px;
    float:none;
    clear:both;
    display:block;
}
.startform input.text,
.startform input.password,
.startform input.captcha,
.startform textarea {
    width:100%;
    max-width:100%;
    margin:3px 0 9px;
    padding-top:6px;
    padding-bottom:6px;
    padding-left:6px;
    background-color:rgba(186,186,186,.5);
    border:medium none;
}
.startform fieldset.checkbox_container {
    width:100%;
    margin:10px 0;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
}
.startform fieldset.checkbox_container label {
    width:100%;
    display:block;
    max-width:calc(100% - 0px);
}
.startform .submit {
    width:100%;
    max-width:100%;
    margin-top:4px;
    margin-left:0;
    padding-top:8px;
    padding-bottom:6px;
    text-align:center;
    background-color:#13a3cf;
    color:#FFF;
    border:medium none;
    cursor: pointer;
}

/* ****************************************************************************************************************** */
/* --- slider ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


body {
    /*background-color:var(--ka-color-bk2);*/
}

.coloredh1 h1,
.coloredh2 h2,
.coloredh3 h3,
.coloredh4 h4,
.coloredh5 h5,
.coloredh6 h6 {
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.bigtext h1 {
    white-space: normal;
}

.bigtext p {
    font-size: 22px;
    line-height: 28px;
    letter-spacing: 0;
}

.coloredslogan {
    position: absolute;
    top : 0px;
    /*
    height: 100%;
    top: -10%;
    */
    display: flex;
    flex-direction:column;
    justify-content :center;
    top: 40%;
    transform: translateY(-60%);
}

.coloredslogan.center {
    text-align: center;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index:951;
}

.coloredslogan h2 {
    text-transform:uppercase;
    width: auto;
    min-width: 0;
    display:table;
    /*
    display:flex;
    justify-content :center;
    */
    padding: 0;
    font-size: 72px;
    line-height:88px;
    font-weight: 300;
    letter-spacing:.02em;
    margin-right: 0;
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    /*background-image: url('/files/intern/common/fmd-look.png');
    background-size: 100%;*/
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    /*text-align: center;  */
}

.coloredslogan div,
.coloredslogan p {
    color: #ffffff;
    font-size: 20px;
    line-height:24px;
    text-transform:uppercase;
}

.coloredslogan a {
  color: #caefff;
  font-size: 20px;
  text-transform:uppercase;
}

.coloredslogan h3 {
    color: #caefff;
    font-size: 20px;
    text-transform:uppercase;
}


.ce_headline.colored {
    text-transform:uppercase;
    width: auto;
    min-width: 0;
    display:flex;
    justify-content :center;
    padding: 0;
    font-size: 38px;
    line-height:38px;
    margin-right: 0;
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    /*background-image: url('/files/intern/common/fmd-look.png');*/
    background-size: 100%;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    /*text-align: center;  */
}

div#anker,
div#anker1-weltkarte {
    display:block;
}

div#anker::before,
div#anker1-weltkarte::before
 {
    content: '';
    display: block;
    height: 70px;
    margin-top: -70px;
    visibility: hidden;
}

#main .projectlink.imagegrow,
#main .projectlink.flat {
    position: relative;
    width:calc(33.3% - 10px);
}
#main .projectlink.imagegrow .imgblock,
#main .projectlink.flat .imgblock {
    position: relative;
    overflow: hidden;
}
#main .projectlink.imagegrow .imgblock *,
#main .projectlink.flat .imgblock * {
    line-height: 1px;
}
#main .projectlink.imagegrow .image_container,
#main .projectlink.flat .image_container {
    overflow: hidden;
    line-height: 1px;
}
#main .projectlink.imagegrow .image_container img,
#main .projectlink.flat .image_container img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;
}
#main .projectlink.imagegrow:hover .image_container img,
#main .projectlink.flat:hover .image_container img {
    transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
}
#main .projectlink.imagegrow .button a {
    position: absolute;
    width: 100%;
    top: calc(50% - 15px);
    color:
    #ffffff;
    font-size: 30px;
    line-height: 34px;
    font-weight: 500;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    pointer-events: none;
    text-align: center;
}
#main .projectlink.imagegrow .text {
    margin-top: 20px;
    margin-bottom: 20px;
    padding-left: 50px;
    padding-right: 50px;
}


#main .projectlink.flat {
    position: relative;
    width:calc(33.3% - 10px);
}
#main .projectlink.flat .text {
    width: 80%;
}

#main .projectlink.hover {
    position: relative;
    display: inline-block;
    float: left;
    padding: 0;
    margin: 0;
}
#main .projectlink.hover .imgblock {
    /*
    position: absolute;
    top: 0;
    left: 0;
    */
}
#main .projectlink.hover .headline {
    color: #ffffff;
    font-size: 34px;
    font-weight: 300;
}
#main .projectlink.hover .imgblock * {
    line-height: 1px;
    position: relative;
}
#main .projectlink.hover .imgblock .headline {
    position: absolute;
    top:50%;
    width: 100%;
    text-align: center;
    transition: .5s;
}
#main .projectlink.hover:hover .imgblock .headline {
    opacity: 0;
}

#main .projectlink.hover .textblock {
    position: absolute;
    top: 0;
    left: 0;
    width: calc(100% - 20%)  ;
    height: 100%;
    padding-left: 10%;
    padding-right: 10%;
    background-color: #131820;
    display: flex;
    flex-direction:column;
    text-align: center;
    justify-content :center;
    opacity: 0;
    transition: 1.5s;
}
#main .projectlink.hover:hover .textblock {
    opacity: 0.8;
}
#main .projectlink.hover .button a {
    font-size: 34px;
}
#main .projectlink.hover .textblock .text {
    margin-top: 20px;
    margin-bottom: 20px;
}
#main .projectlink.hover .textblock .headlinecolor {
    font-size: 16px;
    line-height:18px;
    font-weight: 600;
    background-image:linear-gradient(90deg,#b91509,#20549d,#23bfe4);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#main .projectlink.hover .button a {
    color: #ffffff;
    font-size: 16px;
    font-weight: 300;
}
#main .projectlink.hover .textblock .text p {
    color: #999999;
}

#main .projectlink .imgblock .pl-yt {
    position: relative;
    display: inline-block;
}
#main .projectlink .imgblock .pl-yt .image {
    position: relative;
    visibility: visible;
    opacity: 1;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .image.disable {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .image button {
    position: absolute;
    top:calc(50% - 15px);
    left:calc(50% - 20px);;
    width: 30px;
    height: 40px;
    background-image: url('/files/intern/common/fmd-pfeil-rechts-hover.png');
    pointer-events: none;
}

#main .projectlink .imgblock .pl-yt img {
    cursor: pointer;
}

#main .projectlink .imgblock .pl-yt img
#main .projectlink .imgblock .pl-yt .video {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    /*display:none;*/
}
#main .projectlink .imgblock .pl-yt .video {
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .video.enable {
    visibility: visible;
    opacity: 1;
    transition: visibility 0s linear 500ms, opacity 500ms;
}
#main .projectlink .imgblock .pl-yt .video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

#main .textimg {
    position: relative;
    width: 100%;
    height: 100%;
    /*
    margin-top: 20px;
    margin-bottom: 20px;
    display: flex;
    flex-direction:column;
    justify-content: space-between;
    */
}
#main .textimg .imgblock * {
    line-height: 1px;
}
#main .textimg .imgblock .image_container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}
#main .textimg img {
    position: absolute;
    width: 150%;
    height: 100%;
    left:-25%;
    object-fit: cover;
    display: inline-block;
    max-width: 200%;
}

#main .textimg .textblock {
    padding-top: 80px;
    padding-bottom: 80px;
    background-color: #eeeeee;
    display: flex;
    flex-direction:column;
    justify-content :center;
}
#main .textimg .left .headline,
#main .textimg .left .text,
#main .textimg .right .headline,
#main .textimg .right .text,
#main .textimg .left .button,
#main .textimg .right .button {
    padding-left: 100px;
    padding-right: 100px;
}
#main .textimg .headline {
    margin-top: 0;
}
#main .textimg .textblock a {
    color:#23bfe4;
}
/*
#main .textimg .headline {
    font-size: 32px;
    line-height: 36px;
    font-weight: 300;
    margin-bottom: 20px;
}
*/
#main .textimg .left .button,
#main .textimg .right .button {
    margin-top: 20px;
}
#main .textimg .button a {
    font-weight: 600;
    transition: 0.5s;
}
#main .textimg .button a:hover {
    color:#23bfe4;
}

.startproject,
#main .startproject,
#main .bepartofit {
    padding-top: 80px;
    padding-bottom: 80px;
    background-position: center;
}
/*
#main .startproject.maxheight {
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    height: 0;
    padding-top: 66.64%;
    display: flex;
    flex-direction:row;
    justify-content :center;
    align-items: center;
}
#main .startproject.maxheight div {
    position: absolute;
    margin-top: -66.64%;
}
*/

.startproject p,
 #main .startproject p {
    color:#5f97ad;
    margin-bottom: 0px;
}
.startproject div.headline,
#main .startproject div.headline {
    color:#ffffff;
    font-size:30px;
    line-height:34px;
    font-weight: 300;
    letter-spacing: 0.05em;
    margin-bottom: 30px;
    text-transform: uppercase;
}
.dark.startproject div.headline,
#main .dark.startproject div.headline {
    color:#000000;
}
.startproject a,
#main .startproject a {
    display: inline-block;
    color:#ffffff;
    font-weight: 400;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    margin-top: 20px;
    padding: 5px 40px 5px 40px;
    background-color: rgba(18, 81, 105, 0.8);
    /*background-color: #125169;*/
}

.startproject a:hover,
#main .startproject a:hover {
    background-color: rgba(35, 191, 228, 0.8);
}


#main .bepartofit h2 {
    color:#ffffff;
    font-size: 36px;
    line-height: 40px;
    font-weight: 400;
    text-transform: uppercase;
}
#main .bepartofit .right h2 {
    color:#22c0e6;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
    letter-spacing: 0;
    text-transform: uppercase;
    margin-bottom: 20px;
}
#main .bepartofit a {
    display: inline-block;
    color:#22c0e6;
    font-size: 20px;
    line-height: 24px;
    font-weight: 400;
    text-transform: uppercase;
    margin-top: 20px;
    padding: 5px 10px 5px 10px;
}
#main .bepartofit div,
#main .bepartofit div p {
    font-size: 18px;
    line-height: 22px;
    color:#ffffff;
}

#main .experts {
    display: flex;
    flex-wrap: wrap;
    text-align: left;
}

#main .experts > *,
#main .expert {
    padding: 10px;
    flex: 0 0 calc(33% - 10px);
    box-sizing: border-box;
    margin-bottom: 30px;

}
#main .expert div,
#main .expert p {

}
#main .expert div.name {
    margin-top: 30px;
    font-weight: 600;
}
#main .experts video,
#main .projectlink video {
    width: 100%;
}
#main .experts .socials {
    margin-top: 8px;
}

body.safari #main .expert .video-container .controls {
    display: none;
}

#main .expert .video-container,
#main .projectlink .video-container {
    position: relative;
    cursor: pointer;
}
#main .projectlink .video-container {
    cursor: pointer;
}

#main .expert .controls,
#main .projectlink .controls {
  visibility: hidden;
  opacity: 1;
  position: absolute;
  bottom: calc(50% - 27px);
  left: calc(50% - 27px);
  transition: 1s all;
  display: flex;
}
#main .expert .controls {
  left: auto;
  bottom: 20px;
  right: 20px;
}
#main .projectlink .controls {
  left: auto;
  bottom: 20px;
  right: 20px;
}

#main .expert .player:hover .controls,
#main .projectlink .player:hover .controls,
player:focus .controls {
  opacity: 1;
}


#main .expert button:before,
#main .projectlink button:before {
  font-size: 20px;
  position: relative;
  content: attr(data-icon);
  color: #aaa;
  text-shadow: 1px 1px 0px black;
}

#main .expert .timer,
#main .projectlink .timer {
  line-height: 38px;
  font-size: 10px;
  font-family: monospace;
  text-shadow: 1px 1px 0px black;
  color: white;
  flex: 5;
  position: relative;
}

#main .expert .timer div,
#main .projectlink .timer div {
  position: absolute;
  background-color: rgba(255,255,255,0.2);
  left: 0;
  top: 0;
  width: 0;
  height: 38px;
  z-index: 2;
}

#main .expert .timer span,
#main .projectlink .timer span {
  position: absolute;
  z-index: 3;
  left: 19px;
}

#main .expert .play,
#main .projectlink .play {
    width: 30px;
    height: 30px;
    /*
    position: absolute;
    left: auto;
    bottom: 10px;
    right: 30px;
    */
    /*
    width: 55px;
    height: 55px;
    */
    padding: 0;
    border: 0;
    opacity: 1;
    outline: none;
    border-style: none;
    background-color: rgba(0,0,0,0.01);
    /*background-image: url('/files/intern/common/fmd-pfeil-rechts-hover.png');*/
    background-image: url('/files/intern/common/fmd-mouseover.png');
    background-position: center;
    background-repeat: no-repeat;
    text-indent: -9999px;
    cursor: pointer;
}
#main .projectlink .play {
    background-image: url('/files/intern/common/fmd-mouseover.png');
    background-color: transparent;
}
#main .expert .play:focus,
#main .projectlink .play:focus {
    outline: 0 !important;
    border: none;
    outline: none;
}
#main .expert .play[data-icon='u'],
#main .projectlink .play[data-icon='u'] {
    opacity: 0.7;
    background-color: transparent;
    background-image: url('/files/intern/common/fmd-close-hover.png');
    display: none;
    /*background-color: #ff0000;*/
}

#main .expert .stop,
#main .expert .timer,
#main .expert .rwd,
#main .expert .fwd,
#main .projectlink .stop,
#main .projectlink .timer,
#main .projectlink .rwd,
#main .projectlink .fwd {
    display: none;
}

.previewvideo {
    max-height: 100vh;
    z-index: 950;
}

.previewvideo,
.previewvideo .prev-video-container {
    position: relative;
}
.previewvideo .prev-video-container {
    z-index: 951;
}
.previewvideo video {
    width: 100%;
    object-fit:cover;
}


.previewvideo .videobtn {
    position: absolute;
    top: 50%;
    left:50%;
    transform: translate(-50%);

    /*
    min-width: 160px;
    height: 40px;
    */
    display: flex;
    flex-direction:column;
    justify-content :center;
    padding: 15px 30px 15px 15px;
    /*
    background-color: rgba(18, 81, 105, 0.8);
    */
    background-image: url('/files/intern/common/fmd-play-video-full.png');
    background-position: 95% center;
    background-repeat: no-repeat;
    /*
    border-radius: 3px;
    */
    font-size: 14px;
    line-height: 14px;
    letter-spacing: 0.02em;
    font-weight:400;
    text-transform: uppercase;
    color: #23bfe4;
    cursor: pointer;
    z-index:954;
    transition: all 500ms ease-in-out;
    white-space: nowrap;
}

.previewvideo .videobtn:hover {
    /*background-color: rgba(35, 191, 228, 0.8);*/
    color: #95ebff;
}

.previewvideo .videobtn.disable {
    display: none;
}

/*
#main .experts video .controls .progress {
   cursor:pointer;
   width:75.390625%;
}
*/

.controlBar {
    display: none;
}





#main .blueboxes {
    position: relative;
    display: flex;
    flex-direction:row;
    justify-content: space-between;
    text-align: left;
    padding: 0 10px 0 10px;
    z-index: 1;
}


#main .bluebox {
    position: relative;
    width: calc(33% - 15px);
    background-color: #000000;
    min-height: 550px;
    text-align: center;
    margin: 0;
    border: 0;
    /*border: 1px solid #ffffff;*/
    overflow: hidden;
}

/*
#main .bluebox:before {
    content: '';
    position: absolute;
    top: -3px;
    right: -3px;
    bottom: -3px;
    left: -3px;
    /*
    background: -webkit-linear-gradient(#20549d, #b91509, #23bfe4);

    transform: rotateZ(-91deg) translate(0, 0);
    z-index:-1;

    background: -o-linear-gradient(#b91509, #20549d,#23bfe4);
    background: linear-gradient(#b91509, #20549d,#23bfe4);

    background: -webkit-linear-gradient(rgba(229, 172, 142, 0), rgba(255,255,255,0.5) 50%, rgba(229, 172, 142, 0));
    background: -o-linear-gradient(rgba(229, 172, 142, 0), rgba(255,255,255,0.5) 50%, rgba(229, 172, 142, 0));
    background: linear-gradient(rgba(229, 172, 142, 0), rgba(255,255,255,0.5) 50%, rgba(229, 172, 142, 0));
    background-color: #ffffff;
    margin: -5px;
    transform: rotateZ(-0.5deg) translate(0, 0);

    content: '';
    position: absolute;

    background: -webkit-linear-gradient(#b91509, #20549d,#23bfe4);

    z-index:-1;

}
*/

#main .bluebox div,
#main .bluebox p {
    color:#ffffff;
    font-size: 15px;
    line-height: 19px;
}

#main .bluebox.weiss {
    background-color: #bcbcbc;
}
#main .bluebox.grau1 {
    background-color: #34404e;
}
#main .bluebox.grau2 {
    background-color: #262e3c;
}
#main .bluebox.hellblau {
    background-color: #125169;
}
#main .bluebox.blau {
    background-color: #1c293b;
}
#main .bluebox.dunkelblau {
    background-color: #0f141d;
}
#main .bluebox.lila {
    background-color: #23bfe4;
}
#main .bluebox.rot {
    background-color: #a4472c;
}

#main .bluebox.lila h5 {
    color: #ffffff;
}

#main .bluebox .textbox {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;

    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    justify-content :center;
    flex-direction:column;
}

#main .bluebox .textbox p {
    line-height: 25px;
}

#main .bluebox.oben .image_container {
    position: absolute;
    top: 0;
    /*z-index: -1;*/
}

#main .bluebox.unten .image_container {
    position: absolute;
    bottom: -5px;
    /*z-index: -1;*/
}

/*
#main .bluebox .image_container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transform: rotateX(90deg);
    transition: 1.5s;
    overflow: hidden;
}
*/

#main .bluebox .headlinecolor {
    opacity: 0;
    position: absolute;
    top: -20px;
    left:20px;
    z-index: 905;
    font-size: 60px;
    transition: 0.5s;
}

/*
#main .bluebox:hover .headlinecolor {
    top: 00px;
    opacity: 0.5;
}

#main .bluebox:hover .image_container {
    transform: rotateX(0deg);
    opacity: 1;
}
*/

#main .bluebox a {
    position: absolute;
    bottom: 20px;
    right: 20px;
    z-index: 915;
    font-size: 24px;
    transition: 0.5s;
    border: 1px solid #ffffff;
    background-color: #ffffff;
    padding: 8px 15px 8px 15px;
    transform: translateY(30px);
    opacity: 0;
    visibility: hidden;
}

/*
#main .bluebox:hover a {
    transform: translateY(0px);
    opacity: 0.5;
    visibility:visible;
}
*/


#main .imgmain {
    background-color: #f6f2ec;
    padding-top: 40px;
    padding-bottom: 30px;
    margin-bottom: 40px;
    display: block;
}

#main .moving {
    font-size: 24px;
    font-family: Open Sans, Arial;
    font-weight: 600;
    text-transform: uppercase;
    color: #000000;
    letter-spacing: 0.07em;
    margin-bottom: 40px;
}

.left1200 #main .inside {
    text-align: left;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}

.floatleft .rsts-skin-default.rsts-main {
    /*width: 33%;*/
    float:left;
}

.floatleft .rsts-slide {
    /*position: relative;*/
}

.floatleft .rsts-slide div {
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.floatleft .rsts-slide div .boxgrey.center {
    padding-left: 10%;
    padding-right: 10%;
    height: 100%;
}


.safari .coloredh1 h1,
.safari .coloredh2 h2,
.safari .coloredh3 h3,
.safari .coloredh4 h4,
.safari .coloredh5 h5,
.safari .coloredh6 h6,
.safari .coloredslogan h2,
.safari .ce_headline.colored,
.safari #main .projectlink.hover .textblock .headlinecolor ,
.safari .boxdarkblue .headlinecolor {
            /*
            width: 35%;
            margin-top: 10px;
            padding: 0;

            */
            /*
            font-size: 36px;
            text-transform:uppercase;
            /*

            font-weight: 300;
            line-height:40px;
            margin-right: 0;

            color: #ffffff;

            */


            background-image:linear-gradient(to right,#b91509,#20549d,#23bfe4);

            /*background-image: -webkit-linear-gradient(to right,#b91509,#20549d,#23bfe4);*/
            -webkit-background-clip: text;
            -webkit-text-fill-color: #23bfe4; /*BG271020 das geht*/

            /*text-align: center;*/
            /*
            background-size: 500% auto;
            animation: shine 30s linear infinite;
            */
}


/* ****************************************************************************************************************** */
/* --- Blog --------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

body.blog #banner {
    top: 0;
    position: relative;
    display: block;
    margin-top: 0px;
    height: calc(66vh - 0px) !important;
    overflow: hidden;
    z-index: 950;
}
body.blog #banner .bannerinside {
    min-height: 0px;
    height: 100%;
    overflow: hidden;
    display: block;
}
body.blog #bannerimage {
    width: 100%;
    height: 100%;
    position: relative;
    margin-bottom: 100px;
}

body.blog #banner .mod_article,
body.blog #banner .mod_newslist {
    width: 100%;
    height: 100%;
    display: grid;
}

#banner .mod_newslist .news-blog.col3 {
    width: 100%;
    position: relative;
}
#banner .mod_newslist .news-blog.col3 .newsbloginside {
  width: 100%;
  height: 100%;
  display: inline-block;
  position: relative;
}
#banner .mod_newslist .news-blog.col3 .subHeadline1,
#banner .mod_newslist .news-blog.col3 .teaser1 {
    display: none;
}
#banner .mod_newslist .news-blog.col3 .blogimage {
    position: absolute;
    top: 0;
    left:0;
    width: 100%;
    height: 100%;

}
#banner .mod_newslist .news-blog.col3 .blogimage img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#banner .mod_newslist .news-blog.col3 .blogtext {
    position: absolute;
    top: auto;
    bottom: 0;
    width: 100%;
    padding: 75px 0;
    background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.8));
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-: ;content: center;
    pointer-events: none;
}
#banner .mod_newslist .news-blog.col3 .blogtext * {
    color: #fff;
}
#banner .mod_newslist .news-blog.col3 .blogtext h4 {
    margin-top: 10px;
    margin-bottom: 30px;
    white-space: normal;
    font-size: 60px;
    line-height: 66px;
    font-weight: 300;
    color: #fff;
    letter-spacing: 0em;
    text-transform:none;
}
#banner .mod_newslist .news-blog.col3 .blogtext .teaser {
    width: 80%;
    max-width: 800px;
    display: flex;
    flex-direction:row;
    align-items: center;
    justify-content: center;
    text-align: center;
}
#banner .mod_newslist .news-blog.col3 .blogtext a {
    /*text-transform:uppercase;*/
}

#main .mod_newslist {
    display: flex;
    flex-direction:row;
    flex-flow: row wrap;
    justify-content: space-between;
    /*align-items: flex-start;*/

    /*
    flex-wrap: wrap;
    -moz-column-count: 3;
  	-moz-column-gap: 20px;
  	-webkit-column-count: 3;
  	-webkit-column-gap: 20px;
  	column-count: 3;
  	column-gap: 20px;
    */
    /*
    column-count: 3;
    column-gap: 20px;
    */
}

#main .mod_newslist::after {
    content: "";
    width:calc(33% - 10px);
    /*flex: auto;*/
}


#main .mod_newslist .news-blog.col3 {
    display: flex;
    align-items: flex-start;
    position: relative;
    float:left;

    /*width:100%;*/
    margin:0 0 20px 0;
    padding: 0;
    width:calc(33% - 10px);
    /*overflow: hidden;*/
    background-color: #fff;
    background-color: #eee;
}


/*
#main .mod_newslist .news-blog.col3.first {
    display: none;
}
*/

#main .mod_newslist .news-blog.col3 .blogimage {
    line-height: 1px;
    overflow: hidden;
}
#main .mod_newslist .news-blog.col3 .blogimage img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;

}
#main .mod_newslist .news-blog.col3 .blogimage img:hover {
  transform: scale(1.05, 1.05);
  -ms-transform: scale(1.05, 1.05);
  -webkit-transform: scale(1.05, 1.05);
}
#main .mod_newslist .news-blog.col3 .blogimage a {
    line-height: 1px;
    font-size: 1px;
    text-decoration:none;
    border-bottom: 0px solid #ffffff;
}

#main .mod_newslist .news-blog.col3 .blogimage img:hover {

}

#main .mod_newslist .news-blog.col3 .blogtext {
    padding: 12%;
}

.mod_newslist .news-blog.col3 .blogtext .headline,
#banner .mod_newslist .news-blog.col3 .blogtext .headline,
.blogdetails .katdatetime .headline {
    margin-right: 10px;
    color:#23bfe4;
}
.mod_newslist .news-blog.col3 .blogtext .headline::after,
#banner .mod_newslist .news-blog.col3 .blogtext .headline::after,
.blogdetails .katdatetime .headline::after {
    margin-left: 10px;
    content: "|";
    color:#23bfe4;
    /*background-color: red;*/
}
.mod_newslist .news-blog.col3 .blogtext .datetime,
#banner .mod_newslist .news-blog.col3 .blogtext .datetime {
    color:#23bfe4;
}
.mod_newslist .news-blog.col3 .blogtext h4 {
    margin: 20px 0 30px 0;
    text-transform:none;
    font-size: 26px;
    line-height: 30px;
    letter-spacing: 0em;
    font-weight: 400;
}
.mod_newslist .news-blog.col3 .blogtext span.subHeadline {
    display: block;
    color:#23bfe4;
    text-transform:uppercase;
    margin:0 0 20px 0;
    letter-spacing: 0.15em;
}
.mod_newslist .news-blog.col3 .blogtext .more {
    margin: 30px 0 0 0;
}
.mod_newslist .news-blog.col3 .blogtext .more a {
    font-weight: bold;
}

.blogdetails {
    position: relative;
    /*
    max-width: 1200px;
    margin: 30px auto;
    background-color: #fff;
    padding: 30px 3%;
    */
}
.blogdetails .blogimage {
    position: relative;
    width: 100%;
    max-height: 66vh;
    margin: 0;
    padding: 0;
    overflow: hidden;
}
.blogdetails .blogimage img {
    width: 100%;
    object-fit: cover;
}
.blogdetails .blogimage .imgheadline {
    position: absolute;
    top: auto;
    bottom: 0;
    width: 100%;
    padding: 75px 0;
    background-image: linear-gradient(to bottom, rgba(0,0,0,0), rgba(0,0,0,0.8));
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;
}
.blogdetails .blogimage .imgheadline h1 {
    color: #fff;
    max-width: 1200px;
    width: 70%;
}

.mod_article.blogdetails .blogtext {
    max-width: 1200px;
    margin: 30px auto;
    background-color: #fff;
    padding: 30px 3%;
}

.blogdetails .blogsharebuttons {
    margin: 40px 0;
    padding: 0;
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;
}

.blogdetails .back {
    margin: 40px 0 80px 0;
    padding: 0;
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: center;
}
.blogdetails .back a {
    font-weight: bold;
}

.blogdetails .blogsharebuttons .headline {
    margin: 0 0 15px 0;
}

.blogdetails .katdatetime {
    display: flex;
    align-items: center;
    justify-content: center;
}

.blogdetails h1.headline {
    width: 100%;
    text-align: center;
    /*margin: 30px 0;*/
}

.blogdetails .blogsharebuttons * {
    border-style: none !important;
    list-style-type: none !important;
}

/* ****************************************************************************************************************** */
/* --- max-width: 1610px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1610px) {
    /*
    .center,
    .boxdarkblue.center,
    .boxmiddleblue.center,
    .boxwhite.center {
        padding-left: 10px;
        padding-right: 10px;
        width:calc(100% - 20px);
    }
    */

    #footer .inside {
        padding-left: 50px;
        padding-right: 50px;
        width:calc(100% - 100px);
    }

}

/* ****************************************************************************************************************** */
/* --- max-width: 1210px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1210px) {
    .home #bannerimage,
    .home #banner #bannerimage .rsts-slide > div,
    .home #banner #bannerimage .rsts-main {
        min-height: calc(40vh - 0px) !important;
        max-height: calc(40vh - 0px) !important;
    }
    #bannertext {
        top:55%;
        position:absolute;
    }
    #bannertext h1 {
        font-size:60px;
        line-height:64px;
        text-transform:none;
    }
    #bannertext p {
        font:30px/36px Caveat;
    }

    .coloredslogan h2 {
        font-size: 48px;
        line-height: 52px;
    }

    h1,
    h2,
    h3,
    h4,
    h5 {
        white-space: normal;
    }

    .dist100 {
        height: 50px;
    }
    .dist50 {
        height: 35px;
    }

    .boxgrey {
        padding-right:0px;
        padding-left:0px;
        width:calc(100% - 0px);
    }

    .bildlink .image {
        width: calc(25% - 12px);
    }
    .bildlink .image.nr9,
    .bildlink .image.nr10 {
        display:none;
    }

    #main .limit1200 {
        /*
        margin-right:10px;
        margin-left:10px;
        */
    }

    #main .mod_article .ce_text .ktext,
    #main .mod_article h1,
    #main .mod_article h2,
    #main .mod_article h3,
    #main .ce_form {
        padding-right:5px;
        padding-left:5px;
    }

    #main .textimg .left .headline,
    #main .textimg .left .text,
    #main .textimg .right .headline,
    #main .textimg .right .text,
    #main .textimg .left .button,
    #main .textimg .right .button {
        padding-left: 50px;
        padding-right: 50px;
    }
    #main .textimg h4 {
        font-size: 28px;
        line-height: 32px;
        letter-spacing: 0.1em;
        word-break: break-word;
    }

    .col33m {
        margin-left: 20px;
        margin-right: 20px;
        width: calc(100% - 40px);
    }

    .prodlink {
        margin-right:15px;
        margin-left:15px;
    }
    .mod_footer_navi {
        margin-right:10px;
    }
  }

/* ****************************************************************************************************************** */
/* --- max-width: 850px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 850px) {
    a,
    body,
    fieldset,
    form,
    input,
    label,
    li,
    ol,
    optgroup,
    p,
    select,
    td,
    th,
    textarea,
    ul {
        font-size:15px;
        line-height:19px;
    }

    h1,
    body.home h1,
    .boxgreen h1,
    body.home .boxgreen h1 {
        font-size:45px;
        line-height:50px;
    }
    body.home .mod_newslist h1 {
        font-size:24px;
        line-height:27px;
    }
    h2 {
        font-size:36px;
        line-height:44px;
    }
    h3 {
        font-size:30px;
        line-height:34px;
    }
    h5 {
        margin-top: 20px;
    }

    .col25 {
        width: 50%;
    }


    #mainnav,
    #header .mod_changelanguage {
        display:none;

    }
    #navmobil {
        left:calc(50% - 16px);
        top:20px;
        position:absolute;
        display:block;
    }
    #HeaderSocials {
        right:50px;
        top:12px;
        position:absolute;
        margin-right:3px;
        margin-left:3px;
    }

    #header #HeaderLogo {
        top:12px;
        left:10px;
        width: 50px;
    }

    #header .socials {
        display: none;
    }

    #navmobil {
        position: absolute;
        right: 20px;
        top: 20px;
        left: auto;
    }

    /*.coloredslogan,*/
    .coloredslogan.distright10.col33,
    .coloredslogan.distleft40 {
        width: 80%;
        top: 0;
        left:10%;
        right:10%;
        text-align: center;
    }
    .coloredslogan div {
        width: 100%;
        top: 0;
        left:0;
        text-align: center;
    }
    .coloredslogan p {
        width: 100%;
    }


    html.mm-opening .mm-slideout {
        -webkit-transform: translate(260px, 0);
        -moz-transform: translate(260px, 0);
        -ms-transform: translate(260px, 0);
        -o-transform: translate(260px, 0);
        transform: translate(260px, 0);
    }
    .mm-menu {
        max-width: 260px;
    }
    #mmenu .mm-selected.mm-opened strong {
        overflow:hidden;
        display:block;
        padding:10px 10px 10px 20px;
        line-height:20px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
    #header {
        /*height:88px;*/
    }
    #header .inside {

    }
    /*
    #header #HeaderLogo {
        width:210px;
        left:5px;
        top:0;
        position:absolute;
    }
    #banner {
        margin-top:88px;
    }
    */
    #bannerimage,
    #banner #bannerimage .rsts-slide > div,
    #banner #bannerimage .rsts-main {
        position: relative;
        min-height: calc(50vh - 0px) !important;
        max-height: calc(50vh - 0px) !important;
    }
    #bannerimage .image_container img,
    #bannerimage .video_container video,
    #bannerimage .previewvideo video {
        position: absolute;
        left:-10%;
        width: 120%;
        max-width: 120%;
        height: auto;
    }
    #bannerimage .previewvideo video {
        position: relative;
    }
    .previewvideo .videobtn {
        /*right:10px;*/
    }
    .rsts-skin-default .rsts-nav {
        display:none;
    }

    #main .limit1200,
    #main .limit1000,
    .startproject div.headline,
    #main .startproject div.headline {
        max-width:80%;
        margin-right:auto;
        margin-left:auto;
    }

    #main .blueboxes.limit1200 {
        width: calc(100% - 20px);
        max-width: calc(100% - 20px);
        margin-right:auto;
        margin-left:auto;
    }

    .bigtext p {
        font-size: 18px;
        line-height: 24px;
    }

    .floatleft .rsts-slide div .boxgrey.center {
        padding-top: 0;
        padding-bottom: 0;
        padding-left: 10px;
        padding-right: 10px;
    }

    .rsts-skin-default .rsts-nav {
        bottom:0;
        right:5px;
        position:absolute;
    }
    #bannertext {
        top:120px;
        position:absolute;
    }
    #bannertext h1 {
        font-size:40px;
        line-height:44px;
        text-transform:none;
    }
    #bannerimage .downbutton img {
        height:40px;
    }
    #main .ce_image img {
        /*max-width:90%;*/
    }
    body.home .msry_theme_standard .masonry_gallery {
        width: calc(33.3% - 20px);
    }
    #cboxTitle,
    #cboxCurrent {
        font-size:14px;
    }

    .boxdarkblue .projects {
        display: block;
    }
    #main .projectlink.imagegrow,
    #main .projectlink.flat {
        width: 100%;
        margin-bottom: 40px;
    }

    #footer .mod_footer_colortext {
        margin-left: 10%;
        width: 80%;
        text-align: center;
        margin-top: 40px;
        margin-bottom: 40px;

    }

    #main .ce_vimeo {
        min-height: 200px;
    }

    .prodlink {
        width: calc(50% - 30px);
    }
    .bildlink .image {
        width: calc(33.3% - 12px);
    }
    .bildlink .image.nr7,
    .bildlink .image.nr8,
    .bildlink .image.nr9,
    .bildlink .image.nr10 {
        display:none;
    }
    .bildlink .linkbox a {
        padding-right:60px;
        padding-left:60px;
    }

    #main .bluebox {
        min-height: 400px;
    }

    #main .textimg .col50 {
        width: 100%;
    }

    #main .textimg .imgblock {
        height: 400px !important;
    }
    #main .textimg img {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        object-fit: cover;
        display: inline-block;
        max-width: 100%;
    }
    #main .textimg .left .flexcontainer .imgblock {
        order: 1;
    }
    #main .textimg .left .flexcontainer .textblock {
        order: 2;
    }

    .projects {
        margin: 0 100px 0 100px;
    }

    #main .ce_youtube.col50,
    #main .ce_youtube.col50m {
        float:none;
        width: 100%;
        padding-bottom: 0%;
        margin-bottom: 20px;
    }

    #main .projectlink.hover .textblock {
        width: calc(100% - 10%)  ;
        padding-left: 5%;
        padding-right: 5%;
    }

    /*
    #main .blueboxes {
        display: block;
    }

    #main .bluebox {
        width: calc(100% - 20px);
        margin-bottom: 20px;
    }
    */

    #main .mod_newslist .news-blog.col3 {
        width:calc(50% - 10px);
    }

    #banner .mod_newslist .news-blog.col3 .blogtext h4 {
        text-align: center;
    }

    #main .experts > *, #main .expert {
        flex: 0 0 calc(50% - 10px);
    }

    .fla {
        width: 50%;
    }

    #footer {
        height: 100%;
    }

    #footer .mod_footer_copyright,
    #footer .socials {
        display: block;
        width:100%;
        min-width:100%;
        max-width:100%;
        left:0;
        right:0;
        top:0;
        position:relative;
        float:none;
        clear:both;
        margin:0;
        padding:15px 0 0 0;
        text-align:center;
        margin-bottom: 30px;
        float:left !important;
    }
}

/* ****************************************************************************************************************** */
/* --- menu-mobile -------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 850px) {

  #navmobil {
        width:32px;
        height:32px;
        right:15px;
        position:absolute;
        top:25px;
        z-index: 990;
        cursor: pointer;
    }
    .mobile_menu_overlay {
        z-index: 990;
    }
    .mobile_menu {
        width:100%;
        height: 100vh;
        z-index: 999;
    }

    .mobile_menu #HeaderLogo {
        position: absolute;
        top:12px;
        left:10px;
        width: 120px;
        max-width: 20%;
    }

    .mobile_menu .mod_changelanguage {
        position: absolute;
        bottom: 170px;
        width:100%;
        display: flex;
        flex-direction:column;
        align-items: center;
    }
    .mobile_menu .mod_changelanguage ul {
        margin: 0;
        padding: 0;
        /*transform: translate(-15%, 0);*/
    }

    .mobile_menu .contact {
        position: absolute;
        bottom: 100px;
        width:100%;
        text-align: center;
    }
    .mobile_menu .contact *,
    .mobile_menu .mod_changelanguage * {
        color: #ffffff;
        font-size: 18px;
    }
    .mobile_menu .socials {
        position: absolute;
        bottom: 45px;
        width:100%;
        text-align: center;
    }
    .mobile_menu .socials a {
        width:20px;
        height:20px;
        margin: 0 15px 0 15px;
    }
    .mobile_menu .socials img {
        width:20px;
    }

    .mobile_menu .mobileclose {
        position: absolute;
        top:20px;
        right: 20px;
        display: block;
        width: 40px;
        height: 40px;
    }

    .mobile_menu .inner {
        height: 100%;
        background-color:#131820;
        color:#f1f1f1;
        text-transform:uppercase;
        font:18px Open Sans,Arial,sans-serif;
        z-index: 999;
        display:flex;
        align-items: center;
        justify-content: center;
        position: relative;

    }
    .mobile_menu .inner .ce_text1,
    .mobile_menu .inner .ce_text h1,
    .mobile_menu .inner .ce_text p,
    .mobile_menu .inner .ce_text a1 {
        margin-top:0;
        margin-bottom:0;
        padding:10px 0 10px 15px;
        font-size:18px;
        color:#FFF;
    }
    .mobile_menu .mod_navigation {
        clear:both;
        /*width: 100%;*/
        margin:0;
        margin-top:-125px;
    }
    .mobile_menu .mod_navigation ul.level_1 {
        min-width: 250px;
        margin:0;
        padding:0;
    }
    .mobile_menu li.active.submenu_show > ul {
        padding-top:8px;
    }
    .mobile_menu .mod_navigation ul li {
        float:none;
        clear:both;
        margin:0;
        padding:0;
        list-style-type:none;
        width:calc(100% - 15px);
    }

    .mobile_menu .mod_navigation li span {
        /*das Pfeilchen*/
        width:100%;
        position:relative;
        display:block;
        font-size:20px;
        line-height: 22px;
    }

    .mobile_menu .mod_navigation a,
    .mobile_menu .mod_navigation li span,
    .mobile_menu .mod_navigation li.active strong {
        width:100%;
        display:block;
        margin-top:0;
        margin-bottom:0;
        padding:2px 0;
        text-align:center;
        font-size:18px;
        line-height: 22px;
        text-decoration:none;
        color:#f1f1f1;
        height:auto;
        color: white;
        font-weight:500;
    }
    .mobile_menu .mod_navigation li.active strong {
        color:#23bfe4;
    }
    .mobile_menu .mod_navigation a:focus,
    .mobile_menu .mod_navigation a:hover {
        /*color:#c2c2c2;*/
    }
    .mobile_menu .mod_navigation a.trail:focus,
    .mobile_menu .mod_navigation a.trail:hover {
        color:#fff;
    }
    .mobile_menu .submenu > a1::after,
    .mobile_menu .submenu > span::after {
        width:30px;
        height:28px;
        right:15px;
        position:absolute;
        display:inline-block;
        text-align:center;
        font-size:32px;
        line-height:32px;
        top:-6px;
        content: '›';
    }
    .mobile_menu .submenu_show > a::after,
    .mobile_menu .submenu_show > span::after {
        text-indent:4px;
        transform: rotate(90deg);
    }
    .mobile_menu .mod_navigation li.active.submenu_show {
        padding-top: 4px;
        padding-bottom:0;
        /*border:0px solid #666;*/
    }
    .mobile_menu ul.level_2 ul {
        margin-bottom: 0;
    }
    .mobile_menu ul.level_2 a,
    .mobile_menu ul.level_2 span,
    .mobile_menu ul.level_2 li.active strong {
        font-size:15px;
        line-height: 17px;
    }


    .mobile_menu ::-webkit-scrollbar {
        display:none;
    }



    .mobile_menu {
        display:none;
        -ms-overflow-style: none;
    // IE 10+
    overflow: -moz-scrollbars-none;
    // Firefox
    overflow-y: -moz-hidden-unscrollable;
        -moz-scrollbars-vertical:hidden;
    }

}


/* ****************************************************************************************************************** */
/* --- max-width: 600px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 600px) {

    #header #HeaderLogo {
        top:12px;
        left:10px;
        width: 50px;
    }

    #header .socials,
    #bannerimage .downbutton {
        display: none;
    }

    #bannerimage,
    #banner #bannerimage .rsts-slide > div,
    #banner #bannerimage .rsts-main {
        position: relative;
        min-height: calc(66vh - 0px) !important;
        max-height: calc(66vh - 0px) !important;
    }
    #bannerimage .image_container img,
    #bannerimage .video_container video,
    #bannerimage .previewvideo video {
        left:-50%;
        width: 200%;
        max-width: 200%;
        height: auto;
    }

    .previewvideo .videobtn {
        font-size: 12px;
        line-height: 12px;
    }

    #navmobil {
        position: absolute;
        right: 20px;
        top: 20px;
        left: auto;
    }

    .coloredslogan {
        /*
        top:0;
        */
    }

    .coloredslogan h2,
    #footer .mod_footer_colortext {
        font-size: 28px;
        line-height: 33px;
    }

    .coloredslogan div, .coloredslogan p {
        display: none;
    }

    #main .inside {
        width:100%;
        margin-right:0;
        margin-left:0;
        padding-right:0;
        padding-left:0;
        width:calc(100% - 0px);
    }
    h1,
    body.home h1,
    .boxgreen h1,
    body.home .boxgreen h1 {
        font-size:36px;
        line-height: 36px;
        letter-spacing:.01em;
    }
    h2,
    body.home  h2 {
        font-size:30px;
        line-height:30px;
        letter-spacing:.01em;
    }
    body.home .mod_newslist h1 {
        font-size:18px;
        line-height:20px;
        letter-spacing:.01em;
    }
    h4,
    #main .textimg h4 {
        font-size:20px;
        line-height:23px;

    }
    h5 {
        font-size:16px;
        line-height:20px;
        letter-spacing:0.1em;
    }
    #main .startproject div.headline {
        font-size:20px;
        line-height:23px;
    }

    fieldset.checkbox_container,
    fieldset.checkbox_container label {
        width:100%;
        max-width:100%;
        margin-right:0;
        margin-left:0;
    }

    .bigtext p {
        font-size: 18px;
        line-height: 22px;
    }

    .col25,
    .col50,
    .col50m,
    .col50mr,
    .startbox,
    .startbox50,
    .partner,
    .prodlink,
    .col33line,
    .col50line,
    .col66line,
    .flink div.linkimg,
    #main .ce_youtube.col50,
    #main .ce_youtube.col50m {
        margin-right:0;
        margin-left:0;
        padding-right:0px;
        padding-left:0px;
        width: calc(100% - 0px);
        height:100% !important;
    }

    .dist100 {
        height: 40px;
    }
    .dist50 {
        height: 25px;
    }
    .dist25,
    .dist30 {
        height: 20px;
    }

    .ce_gallery ul.cols_4 li,
    .ce_gallery ul.cols_5 li,
    .ce_gallery ul.cols_6 li {
        padding-left: 2px;
        padding-right: 2px;
        margin-bottom: 4px;
        width: calc(25% - 4px);
    }
    .ce_gallery ul.cols_6 li {
        width: calc(33.3% - 4px);
    }
    .ce_gallery ul.cols_7 li {
        padding-left: 5px;
        padding-right: 5px;
        margin-bottom: 10px;
        width: calc(25% - 10px);
    }

    #main .limit1200,
    #main .limit1000,
    .startproject div.headline,
    #main .startproject div.headline {
        max-width:90%;
        margin-right:auto;
        margin-left:auto;
    }

    #main .projectlink.imagegrow .text,
    #main .projectlink.flat h2,
    #main .projectlink.flat .headline,
    #main .projectlink.flat .button,
    #main .projectlink.flat .text,
    #main .textimg .left .headline,
    #main .textimg .left .text,
    #main .textimg .right .headline,
    #main .textimg .right .text,
    #main .textimg .left .button,
    #main .textimg .right .button {
        padding-left: 20px;
        padding-right: 20px;
    }

    #main .projectlink.flat h2,
    #main .projectlink.flat .headline,
    #main .projectlink.flat .text,
    #main .projectlink.flat .button {
      width: calc(100% - 40px);
    }

    #main .experts > *, #main .expert {
        flex: 1 0 calc(100% - 10px);
    }

    .text2col .textblock.right {
        text-align:left;
    }
    .bildlink .image {
        width: calc(50% - 12px);
    }
    #cboxCurrent {
        bottom:5px !important;
        top: auto;
        right:10px;
    }
    .widget-radio legend {
        max-width: 33%;
    }

    #main .blueboxes {
        display: block;
    }

    #main .bluebox {
        width: calc(100% - 0px);
        margin-bottom: 20px;
    }

    input.text,
    input.password,
    input.captcha,
    textarea,
    .submit,
    fieldset.checkbox_container {
        margin-right:0;
        margin-left:0;
        width:calc(100% - 5px);
        max-width:calc(100% - 5px);
    }
    fieldset.checkbox_container {
        margin-right:0;
        margin-left:0;
        padding-right:0;
        padding-left:0;
        width:calc(100% - 0px);
        max-width:calc(100% - 0px);
    }
    .submit {
        margin-right:0;
        margin-left:0;
        width:calc(100% - 0px);
        max-width:calc(100% - 0px);
    }
    .bildlink .image.nr5,
    .bildlink .image.nr6,
    .bildlink .image.nr7,
    .bildlink .image.nr8,
    .bildlink .image.nr9,
    .bildlink .image.nr10 {
        display:none;
    }
    .bildlink .linkbox a {
        padding:12px 30px;
        font-size:20px;
    }
    .ce_video iframe {
        max-width: calc(100% - 4px);
    }

    .projects {
        margin: 0;
    }
    .projects .col25 {
        width:50%;
    }
    .projects .col25 p {
        font-size: 12px;
        line-height: 15px;
    }
    #main .projectlink.hover .headline {
        font-size: 20px;
        line-height: 24px;
    }
    #main .projectlink.hover .textblock .text {
        margin-top: 5px;
    }

    #main .ce_youtube iframe,
    #main .ce_vimeo iframe {
        width: 100% !important;
    }

    #banner .mod_newslist .news-blog.col3 .blogtext h4 {
        font-size:36px;
        line-height:40px;
    }
    #main .mod_newslist .news-blog.col3 {
        width:100%;
    }

    #footer {
        /*height:80px;*/
    }
    #footer .inside {
        padding-right:5px;
        padding-left:5px;
        width:calc(100% - 10px);
    }
    .footer-cols {
        padding-top: 25px;
    }
    .footer-std {
        padding-bottom: 60px;
    }
    .mod_footer_contact,
    .mod_footer_studios,
    .mod_footer_copyright,
    #footer .socials,
    .mod_footer_navi {
        display: block;
        width:100%;
        min-width:100%;
        max-width:100%;
        left:0;
        right:0;
        top:0;
        position:relative;
        float:none;
        clear:both;
        margin:0;
        padding:15px 0 0 0;
        text-align:center;
        margin-bottom: 30px;
        float:left !important;
    }
    .mod_footer_navi ul,
    .mod_footer_navi li {
        padding-right:0;
        padding-left:0;
    }
    .mod_footer_navi li strong,
    .mod_footer_navi a {
        padding-right:10px;
        padding-left:0;
    }
}

